package com.flst.service;



import java.util.List;

import com.flst.model.Produit;
import com.flst.persistance.singletonDao.PanierDaoSingleton;
/**
 * <p>
 * Il y a 6 m&eacute;thodes dans le service PanierService:
 * <ul>
 * <li><b>getAllProduits</b> qui retourne une liste de Produits qui correspondent aux produits ajout&eacute;s dans le panier.</li>
 * <li><b>removeProduit</b> qui prends en param&egrave;tre l'ID correpondant au produit dans le HashMap <i>id</i>. Elle permet de supprimer un produit du panier.</li>
 * <li><b>clearPanier</b> qui permet de supprimer tous les produits du panier lorsque l'utilisateur les a achet&eacute;.</li>
 * <li><b>addProduit</b> qui prends en param&egrave;tre le produit que l'utilisateur ajoute au panier <i>prod</i>.Elle permet d'ajouter un produit au panier.
 * <li><b>getQuantiteArticle</b> qui retourne la quantit&eacute; d'articles pr&eacute;sents dans le panier.
 * <li><b>getPrixTotal</b> qui retourne le prix total du panier.
 * </ul>
 * </p>
 */
public class PanierService {
	/**
	 * 
	 * @return la liste de tous les produits du panier
	 */
	public List<Produit> getAllProduits(){
		PanierDaoSingleton dao = new PanierDaoSingleton();
		 return dao.getInstance().getAllProduits();
	}
	/**
	 * 
	 * @param pro
	 * 		Produit ajout&eacute;
	 * @return l'ID du HashMap du produit ajout&eacute;
	 */
	public Long addProduit(Produit pro) {
		PanierDaoSingleton dao = new PanierDaoSingleton();
		return dao.getInstance().addProduit(pro);
	}
	/**
	 * 
	 * @param id
	 * 		ID du HashMap
	 * @return un booleen
	 */
	public boolean removeProduit(Long id){
		PanierDaoSingleton dao = new PanierDaoSingleton();
		return dao.getInstance().removeProduit(id);
	}
	/**
	 * 
	 */
	public void clearPanier(){
		PanierDaoSingleton dao = new PanierDaoSingleton();
		dao.getInstance().clearPanier();
		
	}	/**
	 * 
	 * @return la quantit&eacute; d'articles dans le panier
	 */
	public int getQuantiteArticle(){
		PanierDaoSingleton dao = new PanierDaoSingleton();
		return dao.getInstance().getQuantiteArticle();
	}	/**
	 * 
	 * @return le prix total du panier
	 */
	public float getPrixTotal(){
		PanierDaoSingleton dao = new PanierDaoSingleton();
		return dao.getInstance().getPrixTotal();
	}
	
}
